home *** CD-ROM | disk | FTP | other *** search
- /*
- /* This is the graal.main script file for Olaf Longhair,
- /* the first ever GRAAL Graphic Adventure. Heavily annotated.
- /*
- /* If there's a statement or command that you wish to know more
- /* about, just put the cursor over the statement or command name and
- /* press the HELP key. (This requires the GRAAL.guide file to be
- /* in the same directory as the script file and the editor...)
- /*
-
-
- /* ===================================================================== */
- /* */
- /* General adventure and player interface set-up comes first... */
- /* */
- /* ===================================================================== */
-
- /* DEBUG:
- /*
- /* Ensures the monitor and trace facilities are available even if
- /* the game should happen to be encrypted... Use when testing only!!!
- /*
- DEBUG:
-
- /* NAME: string
- /*
- /* The name of the adventure
- /*
- NAME: "Olaf Longhair Goes East"
-
- /* VERSION: string
- /*
- /* The version number of the adventure
- /*
- VERSION: Demo 2.2
-
- /* START_ROOM: roomnumber;entrance
- /*
- /* This is the room where the whole adventure starts
- /*
- START_ROOM: 18;1
-
- /* MAX_CACHE: number of files
- /*
- /* This number is the maximum number of files to be
- /* buffered in RAM: of machines with memory to spare.
- /*
- /* A good practice is to set to 0 during development
- /* and to 100 when playing (or testing without altering
- /* too much in the files).
- /*
- /* Normally, the true number of cached files are
- /* calculated according to the available memory - if
- /* you have put together a weird game where your
- /* files average more then 50K, you may want to lower
- /* the cache to just a few files - say 10 or 20. Normally,
- /* 100 should be just fine, though.
- /*
- MAX_CACHE: 100
-
- /* NTSC_TIMING: YES|NO
- /*
- /* Makes most pauses equally long when the game runs under NTSC as
- /* opposed to PAL. All developers making games to run under both
- /* systems should set this to YES. Also, tracker modules should be
- /* timed with BPM timing. (Note: animations are NOT affected by this
- /* statement: They will still run 20% faster under NTSC.
- /*
- NTSC_TIMING: YES
-
- /* WALK_BUTTON: LEFT or RIGHT
- /*
- /* This is the button used for "walking about"
- /*
- WALK_BUTTON: LEFT
-
- /* Disable save and quit keyboard keys - always go via room 40
- /* DISABLE_SAVE:
- /* DISABLE_QUIT:
-
- /* SYSTEM_TEXT:
- /*
- /* Alters system text in requesters etc. The text in message 0 is displayed
- /* when the player presses the [Help] key.
- /*
- SYSTEM_TEXT: 0;"Keypad [1]-[9] = commands. \Keypad [0] = save/load screen.\Right mouse button = default command for object.\[M] toggles sound on/off. [.] ends a pause.\[I]/[D] alters sentence speed.\[Esc] skips cutscene."
-
- /* EXIT_COL: colour
- /*
- /* The colour of the text marking the exits
- /*
- EXIT_COL: 8
-
- /* OBJ_COL: colour
- /*
- /* The colour of the text marking the objects
- /*
- OBJ_COL: 1
-
- /* MAX_ROOM: rooms
- /*
- /* The highest room number used. Don't forget to alter this
- /* when higher numbered rooms are added to the game!!
- /*
- MAX_ROOM: 50
-
- /* MAX_SECTION: sections
- /*
- /* The highest section number used. Don't forget to alter this
- /* as sections are added to the game!
- /*
- MAX_SECTION: 6
-
- /* MAX_DACT: direct_actions
- /*
- /* The maximum number of DACT: statements used anywhere in a room or
- /* section file. Keep an eye on this value as your adventure
- /* gets more complex...
- /*
- MAX_DACT: 50
-
- /* MAX_ACTION: actions
- /*
- /* The maximum number of ACTION: statements used anywhere in a
- /* room or section file. Keep an eye on this value as your adventure
- /* gets more complex...
- /*
- MAX_ACTION: 150
-
- /* MAX_DLG: dialogue_number
- /*
- /* Highest dialogue number used in the game.
- /*
- MAX_DLG: 30
-
- /* N_DIALOGUES: number;lines;actions
- /*
- /* Sets the limits for dialogues
- /*
- N_DIALOGUES: 6;30;90
-
- /* GLOBALOBJS: number
- /*
- /* Specifies the number of global objects. These are the
- /* objects which can be used throughout the whole adventure,
- /* and also all objects with which you can talk using dialogues
- /*
- GLOBALOBJS: 50
-
- /* SECTIONOBJS: number
- /*
- /* Specifies the number of objects that only exists when
- /* visiting a certain section.
- /*
- /* Note that all object flags, new
- /* names and states are lost when the section is exited,
- /* so any states must be saved and restored using
- /* room flags!!!
- /*
- SECTIONOBJS: 10
-
- /* ROOMOBJS: number
- /*
- /* Specifies the number of objects that only exist within one room.
- /* Note that no altered flags, states or names for these objects
- /* remain between visits to the room: Any state changes must
- /* be saved and stored using room flags!!!
- /*
- ROOMOBJS: 20
-
- /* N_GLOBALBOBS: number
- /*
- /* Specifies the number of global BOBs that can be
- /* used.
- /*
- N_GLOBALBOBS: 90
-
- /* N_SECTIONBOBS: number
- /*
- /* Specifies the number of section BOB images. These are
- /* replaced each time the game enters a new section.
- /*
- N_SECTIONBOBS: 30
-
- /* N_ROOMBOBS: number
- /*
- /* Specifies the number of room BOB images. These are
- /* always replaced when entering a new room.
- /*
- N_ROOMBOBS: 70
-
- /* MSGFONT: fontname;fontsize
- /*
- /* This is the font used for text displayed in the scene area
- /* by SAY, THINK, RESP and TEXT commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- MSGFONT: xen;8
-
- /* COMFONT: fontname;fontsize
- /*
- /* This is the font used for the text displayed in the
- /* command area.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- COMFONT: garnet;9
-
- /* TITLEFONT1: fontname;fontsize
- /*
- /* This font can be used by TYPE and other commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- TITLEFONT1: olaf;27
-
- /* TITLEFONT2: fontname;fontsize
- /*
- /* This font can be used by TYPE and other commands.
- /*
- /* The specified font and fontsize must be installed in the
- /* FONT drawer of the currently used boot disk. Also, remember
- /* to run FIXFONTS on the FONTS: drawer, or it won't work.
- /*
- TITLEFONT2: times;14
-
- /* CLPART: filename
- /*
- /* This is the screen from which all subsequent BOB images
- /* are grabbed. Once you've grabbed the graphics
- /* BOBS, another CLPART and further BOBS may be specified...
- /*
- CLPART: Olaf_Original.iff
-
- /* BOBS: no;startbob;x1;y1;w;h;x-offset;hotspot
- /*
- /* This statement grabs a single BOB image or a horizontally arranged
- /* sequence of BOBs.
- /*
- /* Olaf
- BOBS: 10;11;1;1;31;47;32;0
- BOBS: 10;21;1;49;31;47;32;0
- BOBS: 10;31;1;97;31;47;32;0
- /* ...and the new mouse pointers
- CLPART: Olaf_cursors.iff
- BOBS: 1;59;23;16;17;17;0;0
- BOBS: 1;60;3;16;17;17;0;0
- /* Graphics for highlighted commands
- CLPART: olafcommhi.iff
- BOBS: 1;61;17;18;54;23;84;0
- BOBS: 1;62;85;19;40;19;84;0
- BOBS: 1;63;144;19;30;19;84;0
- BOBS: 1;64;192;19;35;19;84;0
- BOBS: 1;65;241;19;32;19;84;0
- BOBS: 1;66;10;41;42;22;84;0
- BOBS: 1;71;68;40;50;19;84;0
- BOBS: 1;72;134;40;62;19;84;0
- BOBS: 1;73;211;40;65;19;84;0
- BOBS: 1;83;586;29;40;23;0;0
- /* Inventory and dialogue arrows
- CLPART: Olaf_Symbols.iff
- BOBS: 2;67;163;5;18;15;23;0
- BOBS: 2;69;163;21;18;15;23;0
- /* Cutscene indicator
- BOBS: 1;6;89;1;59;29;0;$11
- /* 41-49 Knife, feather, guide book, dictionary, net, ticket, envelope, map, parcel
- BOBS: 9;41;0;43;51;21;50;0
- /* 50-53 wrapping paper, lamp, empty, passport
- BOBS: 4;50;0;63;51;21;50;0
-
-
- /* AREA_SIZES: scene_height;command_height
- /*
- /* Sets the proportions of the split-screen display
- /*
- AREA_SIZES: 120;80
-
- /* COMMAND_AREA: file
- /*
- /* Specify the name of the picture file containing the graphics
- /* for the command area.
- /*
- COMMAND_AREA: Olafcomm.iff;BUFFERED
-
- /* DLG_AREA: file
- /*
- /* Specify the name of the picture file containing the graphics
- /* for the dialogue input area.
- /*
- DLG_AREA: Olafdlg.iff
-
- /* RESOURCE: file
- /*
- /* This file is a resource bank used for
- /* dialogue boxes, requesters, etc.
- /*
- /* DEFAULT means GRAAL's built-in bank will be used - this
- /* produces gray-scale, "neutral" requesters.
- /*
- RESOURCE: DEFAULT
-
-
- /* INV_LAYOUT: x1;y1;x2;y2;rows;cols;ICONS|TEXT;VERTICAL|HORIZONTAL;
- /* ink/image_number;bg
- /*
- /* This statement defines the layout of the inventory in the
- /* command area. VERTICAL|HORIZONTAL determines the scroll
- /* direction. image_number is the image number of the icon
- /* used for vacant slots in the inventory list.
- /*
- INV_LAYOUT: 320;20;569;59;2;5;ICONS;VERTICAL;52;8
-
- /* INV_UP: x1;y1;w;h;image;image2
- /*
- /* This defines the area and image for the inventory scroll "up"
- /* (or "left") arrow.
- /*
- /* "image" is the image when the function is available.
- /* "image2" is the image when the function is unavailable.
- /*
- INV_UP: 297;24;17;14;68;67
-
- /* INV_DOWN: See "INV_UP:"
- /*
- INV_DOWN: 297;43;17;14;70;69
-
- /* DLG_LAYOUT: x1;y1;x2;y2;rows;ink;bg;hi
- /*
- /*
- DLG_LAYOUT: 32;3;633;58;4;9;8;14
-
- /* DLG_UP: Same as "INV_UP:", but for the dialogue alternatives.
- /*
- DLG_UP: 8;6;17;14;68;67
-
- /* DLG_DOWN: See "DLG_UP:"
- /*
- DLG_DOWN: 8;43;17;14;70;69
-
- /* N_VERBS: number
- /*
- /* Sets the number of verbs, or commands if you will, available
- /* to the player. If anything else than 9, A VERB_TEXT and a
- /* VERB_ZONE statement must be included for each verb. (9 was
- /* the old GRAAL 1 default.)
- /*
- N_VERBS: 10
-
- /* VERB_TEXT: verb_no;text
- /*
- VERB_TEXT: 1;Give
- /*
- /* VERB_ZONE: verb_no;x1;y1;x2;y2
- /*
- /* This is the "clickable area" in the command area corresponding
- /* to the verb
- /*
- VERB_ZONE: 1;85;19;123;36;62;62;7
- /*
- VERB_TEXT: 2;Pick up
- VERB_ZONE: 2;17;18;69;39;61;61;7
- VERB_TEXT: 3;Use
- VERB_ZONE: 3;144;19;172;36;63;63;9
- VERB_TEXT: 4;Open
- VERB_ZONE: 4;10;41;50;61;66;66;6
- VERB_TEXT: 5;Talk to
- VERB_ZONE: 5;134;40;194;57;72;72;2
- VERB_TEXT: 6;Push
- VERB_ZONE: 6;191;19;225;36;64;64;4
- VERB_TEXT: 7;Close
- VERB_ZONE: 7;68;40;117;57;71;71;1
- VERB_TEXT: 8;Look at
- VERB_ZONE: 8;211;40;274;57;73;73;3
- VERB_TEXT: 9;Pull
- VERB_ZONE: 9;241;19;271;36;65;65;5
- /*
- /* Verb 10 is used to access the save/load screen. The $ sign makes it
- /* a direct command not using objects, and there is no command name
- /* after the $ sign because we do not want it in the sentence box.
- /*
- VERB_TEXT: 10;$
- VERB_ZONE: 10;586;29;624;50;83;83;0
-
- /* LINE_LENGTH: characters
- /*
- /* This is the maximum number of characters on one line when
- /* text is displayed with SAY, THINK, etc. Line breaks are
- /* inserted automatically. You can control line breaks manually
- /* by providing \ characters in the string with shorter
- /* intervals than this number indicates.
- /*
- LINE_LENGTH: 34
-
- /* NORMAL_WAIT: waitlength
- /*
- /* The larger this value, the longer texts and sentences
- /* spoken remain on screen. Default is 100: If that is not
- /* enough, try other nice, round numbers like 200 or 400.
- /*
- NORMAL_WAIT: 100
-
- /* SENTENCE_LAYOUT: x1;y1;x2;y2;ink;inkhi;bg
- /*
- /* This is the box in the command area where the sentence
- /* under construction is being shown.
- /*
- SENTENCE_LAYOUT: 6;2;634;14;3;11;8
-
- /* CUTSCENE_LAYOUT: x1;y1;x2;y2;bg;ulx;uly;image
- /*
- /* Specifies the properties of the cutscene indicator.
- /* x1;y1;x2;y2 is the area to be blanked out
- /* bg is the colour to use in blanking
- /* ulx;uly is the place to paste the indicator
- /* image is the image of the indicator.
- /*
- CUTSCENE_LAYOUT: 4;17;288;61;8;119;26;6
-
- /* ARROW_CURSOR: image;hotspotx;hotspoty
- /*
- /* An alternative image for the arrow-shaped mouse pointer.
- /* Image must be lowres and 4 colours. Bot the x and y hotspot
- /* value must be set for the "sensitive point" of the cursor.
- /*
- ARROW_CURSOR: 60;0;0
-
- /* CROSSHAIR_CURSOR: image;hotspotx;hotspoty
- /*
- /* An alternative image for the "crosshair" mouse pointer.
- /* Image must be lowres and 4 colours. Bot the x and y hotspot
- /* value must be set for the "sensitive point" of the cursor.
- /*
- CROSSHAIR_CURSOR: 59;7;7
-
- /* CURSOR_PALETTE: RGB;RGB;RGB
- /*
- /* These are the three colour used for the mouse pointer in
- /* the command and dialogue area. In the scene area, the
- /* colours used are always colours 16,17, and 18 of the
- /* backdrop picture palette
- /*
- CURSOR_PALETTE: A00;555;BBB
-
- /* MODE_SWITCH: ROLL|INSTANT
- /*
- /* Sets the way the command area and dialogue area are switched
- /*
- MODE_SWITCH: INSTANT
-
- /* ===================================================================== */
- /* */
- /* Here is data describing the standard attributes of the main character */
- /* */
- /* ===================================================================== */
-
- /* CHAR: number;obj;stimg;eimg;floor;ink;height;text_offset;width;walk_speed
-
- /* When using multiple controllable characters OR automatic 3D scaling,
- /* a CHAR: statement must be present for each controllable character.
- /* (The initially controlled character is character number 1.)
- /*
- /* Old users take notice: Using a CHAR: statement means you can delete
- /* your old CHARACTER_WIDTH:, CHARACTER_HEIGHT:, CHARACTER_COL:
- /* and WALK_SPEED: statements (as indeed I've done in this demo).
- /*
- CHAR: 1;18;11;40;1;1;37;0;22;1.2
-
- /* SELECT_CHAR: YES|NO
- /*
- /* NO means the currently controlled character cannot be picked up
- /* by the cursor.
- /*
- SELECT_CHAR: NO
-
-
- /* STILL_xxxxx: BOB image
- /*
- /* These are the character's standard poses when faces in
- /* the respective direction.
- /*
- /* (Use prefix // to flip the image left/right)
- /*
- STILL_RIGHT: 14
- STILL_LEFT: //14
- STILL_BACK: 12
- STILL_FRONT: 11
-
- /* PAUSE_xxxxx: BOB image
- /*
- /* These are the character's standard poses when pausing
- /* between moves. (More "ready-for-action" poses than the
- /* STILL_xxxxxx images, although they may be the same if
- /* you like it that way.)
- /*
- /* (Use prefix // to flip the image left/right)
- /*
- PAUSE_RIGHT: 13
- PAUSE_LEFT: //13
- PAUSE_BACK: 12
- PAUSE_FRONT: 11
-
- /* WALK_xxxxx: amalsequence
- /*
- /* These are the default animation sequences for moving in the
- /* four main directions.
- /*
- WALK_RIGHT: A 0,(16,6)(15,6)(14,6)(17,6)(18,6)(17,6)(14,6)(15,6)
- WALK_LEFT: A 0,(//16,6)(//15,6)(//14,6)(//17,6)(//18,6)(//17,6)(//14,6)(//15,6)
- WALK_AWAY: A 0,(29,8)(30,8)(31,8)(30,8)
- WALK_TOWARD: A 0,(26,8)(27,8)(28,8)(27,8)
-
- /* TALK_MAP: stillimage;animation
- /*
- /* The speech animation used depends upon the still image
- /* displayed before it begins. This keyword maps the animations
- /* to the still images. Max. 8 talk_maps may be specified.
- /* direction is one of FRONT, BACK, RIGHT or LEFT.
- /*
- /* If imagenumbers point to reverse images,
- /* use prefix // to flip the image left/right.
- /*
- TALK_MAP: 11;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: 12;A 0,(21,24)(12,16)(22,36)(12,48)(22,18)(12,32)
- TALK_MAP: 13;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: //13;A 0,(20,18)(11,12)(20,12)(11,6)(19,12)(11,12)(20,6)(11,6)
- TALK_MAP: 14;A 0,(23,18)(14,12)(23,12)(14,6)(23,12)(14,12)(23,6)(14,12)(24,6)(14,18)
- TALK_MAP: //14;A 0,(//23,18)(//14,12)(//23,12)(//14,6)(//23,12)(//14,12)(//23,6)(//14,12)(//24,6)(//14,18)
-
- /* HANDLE_MAP: stillimage;handlelow;handlemid;handlehigh
- /*
- /* sets the animations for character handling things much the
- /* same way as TALK_MAP maps the speech animations.
- /*
- HANDLE_MAP: 11;A 1,(11,12)(36,1);A 1,(11,12)(34,1);A 1,(11,12)(35,1)
- HANDLE_MAP: 12;A 1,(12,12)(38,1);A 1,(12,12)(39,1);A 1,(12,12)(40,1)
- HANDLE_MAP: 14;A 1,(14,12)(32,1);A 1,(14,12)(33,1);A 1,(14,12)(37,1)
- HANDLE_MAP: //14;A 1,(//14,12)(//32,1);A 1,(//14,12)(//33,1);A 1,(//14,12)(//37,1)
-
-
- /* ===================================================================== */
- /* */
- /* Objects, dialogues, etc. set up below */
- /* */
- /* ===================================================================== */
-
-
- /* OBJECT: no;name;startloc;visible;bob;startimg/anim;xpos;ypos;
- /* coffsx;coffsy;cstill;prep;pickable;animch;command;icon;handlepos;
- /* types;w1;w2;w3
- /*
- OBJECT: 2;pawnshop\owner;2;NVIS;37;RBOB30;396;84;14;-10;//14; ;NPICK;7;5;0;MID;MV;a;this;him
- OBJECT: 3;guard;6;VIS;58;RBOB3;183;102;20;0;//14; ;NPICK;7;5;0;MID;MV;a;this;him
- OBJECT: 5;bearded\man;1;VIS;55;A 0,(RBOB9,36)(RBOB8,48)(RBOB9,24)(RBOB8,36)(RBOB9,36)(RBOB8,48)(RBOB9,24)(RBOB8,36)(RBOB9,64)(RBOB7,100);150;94;-20;20;14; ;NPICK;8;5;0;MID;MV;a;this;him
- OBJECT: 7;Ali;4;VIS;59;A 1,(RBOB2,6);123;117;15;0;//14; ;NPICK;8;5;0;MID;MV; ; ;him
- OBJECT: 9;nomad;2;VIS;59;A 0,(RBOB1,6)(RBOB2,12)(RBOB1,6)(RBOB2,200);55;108;20;1;//14; ;NPICK;9;5;0;MID;MV;a;this;him
- OBJECT: 11;camel;2;VIS;57;A 0,(RBOB7,200)(RBOB9,100)(RBOB7,400)(RBOB10,100)(RBOB9,200);87;110;32;2;//14; ;NPICK;8;8;0;MID;AV;a;this;it
- OBJECT: 14;fishnet;3;VIS;58;RBOB2;20;81;10;3;//14;with;PICK;0;8;45;MID;D;a;this;it
- OBJECT: 15;captain;3;VIS;57;PTRN 1;244;58;30;10;//14; ;NPICK;9;5;0;MID;MV;a;this;him
- OBJECT: 16;piece of\paper;8;VIS;56;RBOB6;66;119;12;0;//14;with;PICK;0;8;47;LOW;WD;an;this;it
- OBJECT: 18;Olaf;1;VIS;60;11;275;138;0;0;11; ;NPICK;1; ; ;MID;-; ; ;
- OBJECT: 21;feather;3;VIS;53;RBOB29;148;74;15;0;//14;with;PICK;0;8;42;LOW;D;a;this;it
- OBJECT: 24;small knife;0;NVIS;0;99;0;0;0;0;0;on;PICK;0;8;41;MID;TD;a;this;it
- OBJECT: 27;parcel;0;NVIS;0;0;0;0;0;0;0; ;PICK;0;8;49;MID;WD;a;this;it
- OBJECT: 28;wrapping\paper;0;NVIS;0;0;0;0;0;0;0;with;PICK;0;8;50;MID;WD;a piece of;this;it
- OBJECT: 30;dictionary;0;NVIS;0;0;0;0;0;0;0;with;PICK;0;8;44;MID;WD;a;this;it
-
- /* DLG: no;obj;ink;y_offset;anim
- /*
- /* This sets up the characters and animations used
- /* as the various dialogue partners in RESP statements.
- /*
- /* 1 is bartender
- DLG: 1;5;10;-20;A 0,(RBOB4,12)(RBOB6,24)(RBOB4,18)(RBOB6,6)(RBOB8,12)(RBOB4,18)(RBOB9,20)(RBOB8,12)(RBOB9,30)
- /* 2 is nomad
- DLG: 2;9;21;-26;A 0,(RBOB4,24)(RBOB3,18)(RBOB4,30)(RBOB3,24)(RBOB5,6)
- /* 3 is captain
- DLG: 3;15;13;-20;A 0,(RBOB4,12)(RBOB22,24)(RBOB4,48)(RBOB22,36)(RBOB4,18)(RBOB23,12)
- /* 4 is Ali Harrod
- DLG: 4;7;19;-30;A 0,(RBOB3,24)(RBOB2,24)(RBOB3,12)(RBOB2,18)(RBOB4,24)
- /* 5 is pawn shop keeper
- DLG: 5;2;8;-20;A 0,(RBOB30,18)(RBOB31,12)(RBOB30,18)(RBOB31,16)(RBOB32,12)
- /* 6 is guard in mountain pass
- DLG: 6;3;21;-40;A 0,(RBOB1,36)(RBOB2,28)(RBOB1,22)(RBOB2,18)(RBOB1,48)(RBOB2,24)(RBOB3,64)
-
- /* ===================================================================== */
- /* */
- /* Here come the global actions, working everywhere */
- /* */
- /* ===================================================================== */
-
-
- /* ACTION: verbno;condition;...;command;...
-
-
- /*
- /* ACTION -2 - Things to do after a "load game"
- /* --------------------------------------------
- /*
- /* Action to put back the command area after a visit to save/load room.
- /* All roms that do not use the command area must set room flag 40,2=1,
- /* and all rooms that use it should set it =0 - this stops the command
- /* area from being shown temporarily when returning to marked positions
- /* in rooms that do not have the command area.
- /*
- ACTION: -2;IFRF 40,1=1;IFRF 40,2=0;COMAREA ON
- ACTION: -2;IFRF 40,1=1;SETRF 40,1=0;EXIT
-
- /*
- /* Trapping all attempts to use Olaf as an object
- /*
- ACTION: ?;IFOBJ 18;EXIT
-
- /*
- /* Action 1 - Give
- /* ---------------
- /*
- ACTION: 1;IFPICK;SAY I don't see the point.;EXIT
- ACTION: 1;SAY I can't do that.;EXIT
-
- /*
- /* Action 2- Pick up
- /* -----------------
- /*
- ACTION: 2;IFCARR;SAY I already have it!;EXIT
- ACTION: 2;IFPICK;MOBJ;HANDLE;W 12;PICK;SOUND 1;HANDLE -1;EXIT
- ACTION: 2;IFTYPE F|M;SAY You can't really mean that!;EXIT
- ACTION: 2;IFTYPE -;SAY That was rather far-fetched, wasn't it?;EXIT
- ACTION: 2;SAY I can't pick that up.|Sorry, that is not possible.;EXIT
-
- /*
- /* Action 3 - Use
- /* --------------
- /*
- ACTION: 3;IFOBJ 24; ;IFOBJ2 14;SAY Why destroy a good net?;EXIT
- ACTION: =;IFTYPE2 W;SAY I can't very well go around carving my initials in everything!;EXIT
- ACTION: =;IFTYPE2 T;SAY I think that would hurt the knife more than the #OBJ2!;EXIT
- ACTION: =;IFTYPE2 A;SAY I am not a vivisectionist!;EXIT
- ACTION: =;IFTYPE2 V;SAY That would be against the law - and also, very impolite.;EXIT
- ACTION: =;SAY I'm afraid I would only cut myself.;EXIT
-
- ACTION: 3;IFOBJ 28;SAY No, I don't feel the need to wrap that up.;EXIT
-
- ACTION: 3;IFOBJ 30; ;IFTYPE2 A;SAY Sorry, but animal language is not included in this volume!;EXIT
- ACTION: =;IFTYPE2 V;SAY I am sure we will get along without it in this case.;EXIT
-
- ACTION: 3;IFTYPE -;SAY Get serious!;EXIT
-
- ACTION: 3;IFTYPE M|F;SAY You can't just use people like that!;EXIT
-
- ACTION: 3;SAY That doesn't work.|I don't know what you are getting at.|I can't use it like that.;EXIT
-
- /*
- /* Action 4 - Open
- /* ---------------
- /*
- ACTION: 4;IFOBJ 30;SAY It's no good if I don't use it with some foreign langauge;EXIT
- ACTION: 4;IFTYPE M|F|A;SAY Get real!;EXIT
- ACTION: 4;SAY I can't open #W13.|That is impossible.;EXIT
-
- /*
- /* Action 5 - Talk to
- /* ------------------
- /*
- ACTION: 5:IFTYPE D;IFTYPE G;SAY I could, but #OBJ1 make a lousy audience!;EXIT
- ACTION: 5;IFTYPE G;SAY I'd rather not disturb them.;EXIT
- ACTION: 5;IFTYPE A;SAY If I could talk to the animals... I'd be in a musical, and not in this stupid adventure!;EXIT
- ACTION: 5;IFTYPE F;SAY I have other things to do besides chatting up every woman I see!;EXIT
- ACTION: 5;IFTYPE M;SAY I sense some communication problems here - let's skip it!;EXIT
- ACTION: 5;SAY It does not seem very talkative.|I would be better off talking to a wall than a #OBJ1.;EXIT
-
- /*
- /* Action 6 - Push
- /* ---------------
- /*
- ACTION: 6;IFTYPE -;SAY You seem slightly delirious again!;EXIT
- ACTION: 6;IFTYPE M|F;SAY You can't go around pushing people like that!;EXIT
- ACTION: 6;IFTYPE A;SAY It might push back - or something worse.;EXIT
- ACTION: 6;SAY That doesn't seem like a good idea to me.|There is no use in pushing that.|Don't push it!;EXIT
-
- /*
- /* Action 7 - Close
- /* ----------------
- /*
- ACTION: 7;IFTYPE M;SAY You mean shut him up? I don't think so...;EXIT
- ACTION: 7;IFTYPE F|A;SAY I can't do that.;EXIT
- ACTION: 7;SAY I can't close #W13.|That can't be done.;EXIT
-
- /*
- /* Action 8 - Look at
- /* ------------------
- /*
- ACTION: 8;MOBJ
-
- ACTION: 8;IFOBJ 14;SAY It smells a bit, but it's a good, strong net.;EXIT
-
- ACTION: 8;IFOBJ 21;SAY It's an ordinary seagull's feather.;EXIT
-
- ACTION: 8;IFOBJ 24;SAY It is small, but Swedish blades bite, no matter what size!;EXIT
-
- ACTION: 8;IFOBJ 27;IFOF 1=1;SAY It is "The Hitchhiker's Guide to the Middle and Far East";EXIT
-
- ACTION: 8;IFOBJ 30;SAY "Anglo/Saxon/Hindi/Arabic/Nordic Dictionary and Phrase Book".;EXIT
-
- ACTION: 8;SAY I don't see anything special.|Just #W11 #OBJ1!|Nothing special to report.;EXIT
-
- /*
- /* Action 9 - Pull
- /* ---------------
- /*
- ACTION: 9;IFTYPE G;SAY What do you mean - pull their legs??;EXIT
- ACTION: 9;IFTYPE M;SAY What do you mean - pull his leg??;EXIT
- ACTION: 9;IFTYPE F;SAY What do you mean - pull her hair??;EXIT
- ACTION: 9;IFTYPE A;SAY No, it might pull back - or something worse.;EXIT
- ACTION: 9;SAY That doesn't seem like a good idea to me.|I really don't think I can pull that off...!|I'd rather pull myself together first.;EXIT
-
- /*
- /* Action 10 - Game save/load/quit/info
- /* ------------------------------------
- /*
- /* Room flag 40,1 is a reminder that the command area must be put back
- /* on screen after a LOAD or RESUME.
- /*
- /* MARK marks spot to be saved.
- /*
- /* EDLG ends dialogue mode if we came here by pressing the save/load
- /* short-cut key. The reason is, we can't use the buttons in the save/load
- /* room while in dialogue mode. Because we did EDLG after MARK, we will
- /* be returned to dialogue mode should we decide to RESUME where we left
- /* off!
- /*
- /* COMAREA OFF takes away the command area with the NF parameter.
- /*
- /* GOTO 40,1 (finally) goes to the load/save/score/quit room!
- /*
- ACTION: 10;SETRF 40,1=1;MARK;EDLG;COMAREA OFF;GOTO 40,1
-